/**
 */
package com.logicfishsoftware.plugbench.wPPlugBench.util;

import com.logicfishsoftware.plugbench.wPPlugBench.*;

import org.eclipse.emf.common.notify.Adapter;
import org.eclipse.emf.common.notify.Notifier;

import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;

import org.eclipse.emf.ecore.EObject;

/**
 * <!-- begin-user-doc -->
 * The <b>Adapter Factory</b> for the model.
 * It provides an adapter <code>createXXX</code> method for each class of the model.
 * <!-- end-user-doc -->
 * @see com.logicfishsoftware.plugbench.wPPlugBench.WPPlugBenchPackage
 * @generated
 */
public class WPPlugBenchAdapterFactory extends AdapterFactoryImpl
{
  /**
   * The cached model package.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   */
  protected static WPPlugBenchPackage modelPackage;

  /**
   * Creates an instance of the adapter factory.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   */
  public WPPlugBenchAdapterFactory()
  {
    if (modelPackage == null)
    {
      modelPackage = WPPlugBenchPackage.eINSTANCE;
    }
  }

  /**
   * Returns whether this factory is applicable for the type of the object.
   * <!-- begin-user-doc -->
   * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
   * <!-- end-user-doc -->
   * @return whether this factory is applicable for the type of the object.
   * @generated
   */
  @Override
  public boolean isFactoryForType(Object object)
  {
    if (object == modelPackage)
    {
      return true;
    }
    if (object instanceof EObject)
    {
      return ((EObject)object).eClass().getEPackage() == modelPackage;
    }
    return false;
  }

  /**
   * The switch that delegates to the <code>createXXX</code> methods.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   */
  protected WPPlugBenchSwitch<Adapter> modelSwitch =
    new WPPlugBenchSwitch<Adapter>()
    {
      @Override
      public Adapter casePlugin(Plugin object)
      {
        return createPluginAdapter();
      }
      @Override
      public Adapter caseAdminPage(AdminPage object)
      {
        return createAdminPageAdapter();
      }
      @Override
      public Adapter caseOptions(Options object)
      {
        return createOptionsAdapter();
      }
      @Override
      public Adapter caseOptionsPage(OptionsPage object)
      {
        return createOptionsPageAdapter();
      }
      @Override
      public Adapter caseOptionType(OptionType object)
      {
        return createOptionTypeAdapter();
      }
      @Override
      public Adapter caseFloatOption(FloatOption object)
      {
        return createFloatOptionAdapter();
      }
      @Override
      public Adapter caseRangeOption(RangeOption object)
      {
        return createRangeOptionAdapter();
      }
      @Override
      public Adapter caseMultiChoiceOption(MultiChoiceOption object)
      {
        return createMultiChoiceOptionAdapter();
      }
      @Override
      public Adapter caseSelectOption(SelectOption object)
      {
        return createSelectOptionAdapter();
      }
      @Override
      public Adapter caseChoiceOption(ChoiceOption object)
      {
        return createChoiceOptionAdapter();
      }
      @Override
      public Adapter caseURLOption(URLOption object)
      {
        return createURLOptionAdapter();
      }
      @Override
      public Adapter caseIntegerOption(IntegerOption object)
      {
        return createIntegerOptionAdapter();
      }
      @Override
      public Adapter caseBooleanOption(BooleanOption object)
      {
        return createBooleanOptionAdapter();
      }
      @Override
      public Adapter caseDateOption(DateOption object)
      {
        return createDateOptionAdapter();
      }
      @Override
      public Adapter caseColourOption(ColourOption object)
      {
        return createColourOptionAdapter();
      }
      @Override
      public Adapter caseCustomOption(CustomOption object)
      {
        return createCustomOptionAdapter();
      }
      @Override
      public Adapter caseStringOption(StringOption object)
      {
        return createStringOptionAdapter();
      }
      @Override
      public Adapter caseTextOption(TextOption object)
      {
        return createTextOptionAdapter();
      }
      @Override
      public Adapter caseDefaultOptionParam(DefaultOptionParam object)
      {
        return createDefaultOptionParamAdapter();
      }
      @Override
      public Adapter caseAbstractStringParam(AbstractStringParam object)
      {
        return createAbstractStringParamAdapter();
      }
      @Override
      public Adapter caseTextParam(TextParam object)
      {
        return createTextParamAdapter();
      }
      @Override
      public Adapter caseStringParam(StringParam object)
      {
        return createStringParamAdapter();
      }
      @Override
      public Adapter caseSelectParam(SelectParam object)
      {
        return createSelectParamAdapter();
      }
      @Override
      public Adapter caseChoiceParam(ChoiceParam object)
      {
        return createChoiceParamAdapter();
      }
      @Override
      public Adapter caseCustomParamFn(CustomParamFn object)
      {
        return createCustomParamFnAdapter();
      }
      @Override
      public Adapter caseCustomParam(CustomParam object)
      {
        return createCustomParamAdapter();
      }
      @Override
      public Adapter caseAbstractParam(AbstractParam object)
      {
        return createAbstractParamAdapter();
      }
      @Override
      public Adapter caseChoiceFn(ChoiceFn object)
      {
        return createChoiceFnAdapter();
      }
      @Override
      public Adapter caseOption(Option object)
      {
        return createOptionAdapter();
      }
      @Override
      public Adapter caseFunctionType(FunctionType object)
      {
        return createFunctionTypeAdapter();
      }
      @Override
      public Adapter caseFunction(Function object)
      {
        return createFunctionAdapter();
      }
      @Override
      public Adapter defaultCase(EObject object)
      {
        return createEObjectAdapter();
      }
    };

  /**
   * Creates an adapter for the <code>target</code>.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @param target the object to adapt.
   * @return the adapter for the <code>target</code>.
   * @generated
   */
  @Override
  public Adapter createAdapter(Notifier target)
  {
    return modelSwitch.doSwitch((EObject)target);
  }


  /**
   * Creates a new adapter for an object of class '{@link com.logicfishsoftware.plugbench.wPPlugBench.Plugin <em>Plugin</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see com.logicfishsoftware.plugbench.wPPlugBench.Plugin
   * @generated
   */
  public Adapter createPluginAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link com.logicfishsoftware.plugbench.wPPlugBench.AdminPage <em>Admin Page</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see com.logicfishsoftware.plugbench.wPPlugBench.AdminPage
   * @generated
   */
  public Adapter createAdminPageAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link com.logicfishsoftware.plugbench.wPPlugBench.Options <em>Options</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see com.logicfishsoftware.plugbench.wPPlugBench.Options
   * @generated
   */
  public Adapter createOptionsAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link com.logicfishsoftware.plugbench.wPPlugBench.OptionsPage <em>Options Page</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see com.logicfishsoftware.plugbench.wPPlugBench.OptionsPage
   * @generated
   */
  public Adapter createOptionsPageAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link com.logicfishsoftware.plugbench.wPPlugBench.OptionType <em>Option Type</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see com.logicfishsoftware.plugbench.wPPlugBench.OptionType
   * @generated
   */
  public Adapter createOptionTypeAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link com.logicfishsoftware.plugbench.wPPlugBench.FloatOption <em>Float Option</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see com.logicfishsoftware.plugbench.wPPlugBench.FloatOption
   * @generated
   */
  public Adapter createFloatOptionAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link com.logicfishsoftware.plugbench.wPPlugBench.RangeOption <em>Range Option</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see com.logicfishsoftware.plugbench.wPPlugBench.RangeOption
   * @generated
   */
  public Adapter createRangeOptionAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link com.logicfishsoftware.plugbench.wPPlugBench.MultiChoiceOption <em>Multi Choice Option</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see com.logicfishsoftware.plugbench.wPPlugBench.MultiChoiceOption
   * @generated
   */
  public Adapter createMultiChoiceOptionAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link com.logicfishsoftware.plugbench.wPPlugBench.SelectOption <em>Select Option</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see com.logicfishsoftware.plugbench.wPPlugBench.SelectOption
   * @generated
   */
  public Adapter createSelectOptionAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link com.logicfishsoftware.plugbench.wPPlugBench.ChoiceOption <em>Choice Option</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see com.logicfishsoftware.plugbench.wPPlugBench.ChoiceOption
   * @generated
   */
  public Adapter createChoiceOptionAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link com.logicfishsoftware.plugbench.wPPlugBench.URLOption <em>URL Option</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see com.logicfishsoftware.plugbench.wPPlugBench.URLOption
   * @generated
   */
  public Adapter createURLOptionAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link com.logicfishsoftware.plugbench.wPPlugBench.IntegerOption <em>Integer Option</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see com.logicfishsoftware.plugbench.wPPlugBench.IntegerOption
   * @generated
   */
  public Adapter createIntegerOptionAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link com.logicfishsoftware.plugbench.wPPlugBench.BooleanOption <em>Boolean Option</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see com.logicfishsoftware.plugbench.wPPlugBench.BooleanOption
   * @generated
   */
  public Adapter createBooleanOptionAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link com.logicfishsoftware.plugbench.wPPlugBench.DateOption <em>Date Option</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see com.logicfishsoftware.plugbench.wPPlugBench.DateOption
   * @generated
   */
  public Adapter createDateOptionAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link com.logicfishsoftware.plugbench.wPPlugBench.ColourOption <em>Colour Option</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see com.logicfishsoftware.plugbench.wPPlugBench.ColourOption
   * @generated
   */
  public Adapter createColourOptionAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link com.logicfishsoftware.plugbench.wPPlugBench.CustomOption <em>Custom Option</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see com.logicfishsoftware.plugbench.wPPlugBench.CustomOption
   * @generated
   */
  public Adapter createCustomOptionAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link com.logicfishsoftware.plugbench.wPPlugBench.StringOption <em>String Option</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see com.logicfishsoftware.plugbench.wPPlugBench.StringOption
   * @generated
   */
  public Adapter createStringOptionAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link com.logicfishsoftware.plugbench.wPPlugBench.TextOption <em>Text Option</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see com.logicfishsoftware.plugbench.wPPlugBench.TextOption
   * @generated
   */
  public Adapter createTextOptionAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link com.logicfishsoftware.plugbench.wPPlugBench.DefaultOptionParam <em>Default Option Param</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see com.logicfishsoftware.plugbench.wPPlugBench.DefaultOptionParam
   * @generated
   */
  public Adapter createDefaultOptionParamAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link com.logicfishsoftware.plugbench.wPPlugBench.AbstractStringParam <em>Abstract String Param</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see com.logicfishsoftware.plugbench.wPPlugBench.AbstractStringParam
   * @generated
   */
  public Adapter createAbstractStringParamAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link com.logicfishsoftware.plugbench.wPPlugBench.TextParam <em>Text Param</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see com.logicfishsoftware.plugbench.wPPlugBench.TextParam
   * @generated
   */
  public Adapter createTextParamAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link com.logicfishsoftware.plugbench.wPPlugBench.StringParam <em>String Param</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see com.logicfishsoftware.plugbench.wPPlugBench.StringParam
   * @generated
   */
  public Adapter createStringParamAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link com.logicfishsoftware.plugbench.wPPlugBench.SelectParam <em>Select Param</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see com.logicfishsoftware.plugbench.wPPlugBench.SelectParam
   * @generated
   */
  public Adapter createSelectParamAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link com.logicfishsoftware.plugbench.wPPlugBench.ChoiceParam <em>Choice Param</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see com.logicfishsoftware.plugbench.wPPlugBench.ChoiceParam
   * @generated
   */
  public Adapter createChoiceParamAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link com.logicfishsoftware.plugbench.wPPlugBench.CustomParamFn <em>Custom Param Fn</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see com.logicfishsoftware.plugbench.wPPlugBench.CustomParamFn
   * @generated
   */
  public Adapter createCustomParamFnAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link com.logicfishsoftware.plugbench.wPPlugBench.CustomParam <em>Custom Param</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see com.logicfishsoftware.plugbench.wPPlugBench.CustomParam
   * @generated
   */
  public Adapter createCustomParamAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link com.logicfishsoftware.plugbench.wPPlugBench.AbstractParam <em>Abstract Param</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see com.logicfishsoftware.plugbench.wPPlugBench.AbstractParam
   * @generated
   */
  public Adapter createAbstractParamAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link com.logicfishsoftware.plugbench.wPPlugBench.ChoiceFn <em>Choice Fn</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see com.logicfishsoftware.plugbench.wPPlugBench.ChoiceFn
   * @generated
   */
  public Adapter createChoiceFnAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link com.logicfishsoftware.plugbench.wPPlugBench.Option <em>Option</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see com.logicfishsoftware.plugbench.wPPlugBench.Option
   * @generated
   */
  public Adapter createOptionAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link com.logicfishsoftware.plugbench.wPPlugBench.FunctionType <em>Function Type</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see com.logicfishsoftware.plugbench.wPPlugBench.FunctionType
   * @generated
   */
  public Adapter createFunctionTypeAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link com.logicfishsoftware.plugbench.wPPlugBench.Function <em>Function</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see com.logicfishsoftware.plugbench.wPPlugBench.Function
   * @generated
   */
  public Adapter createFunctionAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for the default case.
   * <!-- begin-user-doc -->
   * This default implementation returns null.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @generated
   */
  public Adapter createEObjectAdapter()
  {
    return null;
  }

} //WPPlugBenchAdapterFactory
